Enhanced Wi-Fi Access Protocol (EWAP)

ABSTRACT

This disclosure relates to wireless communication techniques. According to some embodiments, a wireless device may select a random number and sequentially advertise the bits of the random number. If the wireless device advertises the highest random number, it may proceed to transmit a packet using a channel. If another device advertises a higher number, the wireless device may not transmit its packet and may restart the process.

PRIORITY CLAIM

This application claims priority to U.S. provisional patent applicationSer. No. 62/562,884 entitled “Enhanced Wi-Fi Access Protocol (EWAP),”filed Sep. 25, 2017, which is hereby incorporated by reference in itsentirety as though fully and completely set forth herein.

FIELD

The present disclosure relates to wireless communication, includingtechniques for access protocols in IEEE 802.11 wireless systems.

DESCRIPTION OF THE RELATED ART

Wireless communication systems are rapidly growing in usage.Additionally, there exist numerous different wireless communicationtechnologies and standards. Some examples of wireless communicationstandards include GSM, UMTS (associated with, for example, WCDMA orTD-SCDMA air interfaces), LTE, LTE Advanced (LTE-A), HSPA, 3GPP2CDMA2000 (e.g., 1×RTT, 1×EV-DO, HRPD, eHRPD), IEEE 802.11 (WLAN orWi-Fi), IEEE 802.16 (WiMAX), Bluetooth, and others.

Wireless local area networks (WLANs) such as Wi-Fi, may involvecontention-based distributed access systems. In particular, they mayutilize unlicensed frequency bands or spectra, which are unpredictableand are often subject to interference. For example, Wi-Fi access may bebased on carrier sense multiple access (CSMA) with a collision avoidancetechnique, such as single-user transmission via enhanced distributedchannel access (EDCA). EDCA may involve random access to the sharedcommunication channel or medium by contending electronic devices (whichare sometimes referred to as ‘stations’ or STAs). As a result, Wi-Fiaccess may be negatively impacted by collisions among multiple devicesrequesting access. For example, if multiple devices attempt randomaccess concurrently, both devices may restart the contention process,resulting in a delay for each of the devices and inefficient use of theshared channel. Hence, improvements in the field may be desirable.

SUMMARY

The present application relates, inter alia, to methods for EnhancedWi-Fi Access Protocol (EWAP) operation for wireless devices in IEEE802.11 (Wi-Fi) wireless communication systems, and describes apparatusesand wireless devices configured to implement the described methods.

In some implementations, according to the techniques described herein, awireless device may select a random number and sequentially advertise(e.g., broadcast or transmit) the bits of the random number. Thesequential transmission process may allow the wireless device to compareits random number to the random numbers of any other wireless devicescontending for access to the wireless network. If the wireless deviceadvertises, e.g., the highest random number, it may proceed to transmita packet using a channel. If another device advertises a higher number,the wireless device may determine not to transmit its packet and mayrestart the process. This process may allow a wireless deviceadvertising, e.g., a highest random number, to access the wirelessmedium. However, this mechanism can be modified to implement otherrules. Embodiments of the invention may operate to provide wirelessdevices more efficient access to a shared medium, while maintainingfairness and interoperability with legacy devices.

The techniques described herein may be implemented in and/or used with anumber of different types of devices, including but not limited toaccess point devices, cellular phones, portable media players, portablegaming devices, tablet computers, wearable computing devices, remotecontrols, wireless speakers, set top box devices, television systems,and other computing devices.

This Summary is intended to provide a brief overview of some of thesubject matter described in this document. Accordingly, it will beappreciated that the above-described features are merely examples andshould not be construed to narrow the scope or spirit of the subjectmatter described herein in any way. Other features, aspects, andadvantages of the subject matter described herein will become apparentfrom the following Detailed Description, Figures, and Claims.

BRIEF DESCRIPTION OF THE DRAWINGS

A better understanding of the present subject matter can be obtainedwhen the following detailed description is considered in conjunctionwith the following drawings, in which:

FIGS. 1-2 illustrate exemplary (and simplified) wireless communicationsystems, according to some embodiments;

FIG. 3 illustrates a block diagram of an exemplary wireless device,according to some embodiments;

FIG. 4 is a flowchart diagram illustrating aspects of an exemplarymethod for implementing Enhanced Wi-Fi Access Protocol (EWAP), accordingto some embodiments;

FIG. 5 is an example timing diagram illustrating aspects of EnhancedDistributed Channel Access (EDCA), according to some embodiments;

FIG. 6 illustrates an example of contention using EWAP, according tosome embodiments;

FIG. 7 illustrates an example EWAP packet format, according to someembodiments;

FIGS. 8-11 illustrate example slot partitions, according to someembodiments;

FIG. 12 illustrates an example of the timing of a potential collisionbetween transmissions, according to some embodiments; and

FIGS. 13 and 14 illustrate example comparative results of EWAP and EDCAaccording to some embodiments.

While the features described herein are susceptible to variousmodifications and alternative forms, specific embodiments thereof areshown by way of example in the drawings and are herein described indetail. It should be understood, however, that the drawings and detaileddescription thereto are not intended to be limiting to the particularform disclosed, but on the contrary, the intention is to cover allmodifications, equivalents and alternatives falling within the spiritand scope of the subject matter as defined by the appended claims.

DETAILED DESCRIPTION OF THE EMBODIMENTS Terms

The following is a glossary of terms used in the present disclosure:

Memory Medium—Any of various types of non-transitory computer accessiblememory devices or storage devices. The term “memory medium” is intendedto include an installation medium, e.g., a CD-ROM, floppy disks, or tapedevice; a computer system memory or random access memory such as DRAM,DDR RAM, SRAM, EDO RAM, Rambus RAM, etc.; a non-volatile memory such asa Flash, magnetic media, e.g., a hard drive, or optical storage;registers, or other similar types of memory elements, etc. The memorymedium may include other types of non-transitory memory as well orcombinations thereof. In addition, the memory medium may be located in afirst computer system in which the programs are executed, or may belocated in a second different computer system which connects to thefirst computer system over a network, such as the Internet. In thelatter instance, the second computer system may provide programinstructions to the first computer for execution. The term “memorymedium” may include two or more memory mediums which may reside indifferent locations, e.g., in different computer systems that areconnected over a network. The memory medium may store programinstructions (e.g., embodied as computer programs) that may be executedby one or more processors.

Carrier Medium—a memory medium as described above, as well as a physicaltransmission medium, such as a bus, network, and/or other physicaltransmission medium that conveys signals such as electrical,electromagnetic, or digital signals.

Programmable Hardware Element—includes various hardware devicescomprising multiple programmable function blocks connected via aprogrammable interconnect. Examples include FPGAs (Field ProgrammableGate Arrays), PLDs (Programmable Logic Devices), FPOAs (FieldProgrammable Object Arrays), and CPLDs (Complex PLDs). The programmablefunction blocks may range from fine grained (combinatorial logic or lookup tables) to coarse grained (arithmetic logic units or processorcores). A programmable hardware element may also be referred to as“reconfigurable logic.”

Computer System—any of various types of computing or processing systems,including a personal computer system (PC), mainframe computer system,workstation, network appliance, Internet appliance, personal digitalassistant (PDA), personal communication device, smart phone, televisionsystem, grid computing system, or other device or combinations ofdevices. In general, the term “computer system” can be broadly definedto encompass any device (or combination of devices) having at least oneprocessor that executes instructions from a memory medium.

Station (STA)—any of various types of computer systems devices which aremobile or portable and which performs wireless communications. Examplesof STAs include mobile telephones or smart phones (e.g., iPhone™,Android™-based phones), portable gaming devices (e.g., Nintendo DS™,PlayStation Portable™, Gameboy Advance™, iPhone™), laptops, wearabledevices (e.g., smart watch, smart glasses), PDAs, portable Internetdevices, music players, data storage devices, or other handheld devices,etc. In general, the term “STA” can be broadly defined to encompass anyelectronic, computing, and/or telecommunications device (or combinationof devices) which is easily transported by a user and capable ofwireless communication.

Base Station or Access Point (AP)—The terms “Base Station” and “AccessPoint” have the full breadth of their ordinary meaning, and at leastinclude a wireless communication station installed at a fixed locationand used to communicate as part of a wireless telephone system and/orradio system.

Processing Element—refers to various elements or combinations ofelements. Processing elements include, for example, circuits such as anASIC (Application Specific Integrated Circuit), portions or circuits ofindividual processor cores, entire processor cores, individualprocessors, programmable hardware devices such as a field programmablegate array (FPGA), and/or larger portions of systems that includemultiple processors.

Automatically—refers to an action or operation performed by a computersystem (e.g., software executed by the computer system) or device (e.g.,circuitry, programmable hardware elements, ASICs, etc.), without userinput directly specifying or performing the action or operation. Thus,the term “automatically” is in contrast to an operation being manuallyperformed or specified by the user, where the user provides input todirectly perform the operation. An automatic procedure may be initiatedby input provided by the user, but the subsequent actions that areperformed “automatically” are not specified by the user, i.e., are notperformed “manually”, where the user specifies each action to perform.For example, a user filling out an electronic form by selecting eachfield and providing input specifying information (e.g., by typinginformation, selecting check boxes, radio selections, etc.) is fillingout the form manually, even though the computer system must update theform in response to the user actions. The form may be automaticallyfilled out by the computer system where the computer system (e.g.,software executing on the computer system) analyzes the fields of theform and fills in the form without any user input specifying the answersto the fields. As indicated above, the user may invoke the automaticfilling of the form, but is not involved in the actual filling of theform (e.g., the user is not manually specifying answers to fields butrather they are being automatically completed). The presentspecification provides various examples of operations beingautomatically performed in response to actions the user has taken.

PHY rate or PHY data rate—A rate at which devices communicate with eachother over a medium. Many wireless communication technologies (includingIEEE 802.11) may provide for the use of different combinations ofmodulation type, coding rate, numbers of spatial streams, channelwidths, and/or other physical layer characteristics. Each suchcombination may result in (and in some cases be referred to as) a “PHYrate”. The combination of physical layer characteristics which result ina given PHY rate may also be referred to as a “modulation and codingscheme”, “MCS”, or “MCS index”. “Lower” or “more robust” PHY rates/MCSindices may provide receivers with greater capability to successfullyreceive information being communicated under less-than-ideal mediumconditions than “higher” or “less robust” PHY rates (e.g., by using alower density modulation scheme and/or including a greater proportion oferror correction coding information), often at a cost of potentialthroughput. Higher or less robust PHY rates may, in contrast, providemore efficient medium use and provide greater throughput than lower PHYrates (e.g., by using a higher density modulation scheme and/orincluding a lesser proportion of error correction coding information),but may be more difficult to receive under less-than-ideal mediumconditions.

IEEE 802.11—refers to technology based on IEEE 802.11 wireless standardssuch as 802.11a, 802.11.b, 802.11g, 802.11n, 802.11-2012, 802.11ac,802.11ax and/or other IEEE 802.11 standards. IEEE 802.11 technology mayalso be referred to as “Wi-Fi” or “wireless local area network (WLAN)”technology.

FIGS. 1-2—Communication System

FIG. 1 illustrates an exemplary (and simplified) wireless communicationsystem 100, according to some embodiments. It is noted that the system100 of FIG. 1 is merely one example of a possible system, andembodiments may be implemented in any of various systems, as desired.For example, note that although the exemplary wireless communicationsystem 100 illustrated in FIG. 1 is shown as including four wirelessdevices, aspects of the disclosure may be implemented in wirelesscommunication systems having greater or lesser numbers (e.g., anyarbitrary number) of wireless devices.

As shown, the exemplary wireless communication system 100 includesmultiple wireless devices 102-108 that communicate over a transmissionmedium. Some or all of the wireless devices may be substantially mobiledevices (“stations” or “STAs”). Alternatively, or in addition, some orall of the wireless devices may be substantially stationary.

The wireless devices 102-108 may communicate over the wirelesstransmission medium in such a manner as to form a wireless network. Thewireless network may be an IEEE 802.11 ‘infrastructure mode’ networkprovided by a dedicated access point (e.g., wireless device 102);alternatively, the wireless network may be an ‘ad-hoc’ or peer-to-peerbased network, or a mixture of infrastructure and ad-hoc networks. Notethat it may be possible that the wireless network may include one ormore ‘hidden nodes’; for example, as shown, wireless device 108 may bewithin communication range of wireless device 102, but may not be ableto detect (and/or be detected by) wireless devices 104 and 106. Thewireless devices 102-108 may be configured to perform IEEE 802.11wireless communication according to aspects of the present disclosure.

One or more of the wireless devices may be equipped to communicate withone or more external networks. For example, as shown, wireless device102 may be communicatively coupled to network 100. The externalnetwork(s) may be any of a variety of types of networks, such as acellular service provider's core network, the Internet, or anorganization's intranet, among various possibilities.

Note that one or more of the wireless devices 102-108 may be capable ofcommunicating using multiple wireless communication standards. Forexample, one or more of the wireless devices 102-108 may be configuredto communicate using at least one wireless networking protocol (e.g.,Wi-Fi) and/or peer-to-peer wireless communication protocol (e.g., BT,Wi-Fi peer-to-peer, etc.) and at least one cellular communicationprotocol (e.g., GSM, UMTS (WCDMA, TD-SCDMA), LTE, LTE-Advanced (LTE-A),HSPA, 3GPP2 CDMA2000 (e.g., 1×RTT, 1×EV-DO, HRPD, eHRPD), etc.). Any orall of wireless devices 102-108 may also, or alternatively, beconfigured to communicate using one or more global navigationalsatellite systems (GNSS, e.g., GPS or GLONASS), one or more mobiletelevision broadcasting standards (e.g., ATSC-M/H or DVB-H), and/or anyother wireless communication protocol, if desired. Other combinations ofwireless communication standards (including more than two wirelesscommunication standards) are also possible.

Any or all of wireless devices 102-108 may be configured to perform anyof the method embodiments described herein, or any portion of any of themethod embodiments described herein, for example to select anoperational mode and/or operational characteristics depending on trafficconditions in the wireless communication system 100.

FIG. 2 illustrates an exemplary wireless communication system 200 inwhich aspects of the system 100 of FIG. 1 according to one possibleimplementation are represented. As shown in the illustrated system,wireless device 106 may be a mobile station (STA) 106 and wirelessdevice 102 may be an access point 102 (also referred to as an “AP”, oralternatively as a “base station” or “BS”). The STA 106 may be a userdevice with Wi-Fi communication capability, such as a mobile phone, ahand-held device, a computer or a tablet, or any suitable type ofwireless device. The AP 102 may be an access point device with Wi-Ficommunication capability, such as a wireless router or other wirelessaccess point.

Either or both of the AP 102 and the STA 106 may include a processorthat is configured to execute program instructions stored in memory.Either or both of the AP 102 and the STA 106 may perform any of themethod embodiments described herein by executing such storedinstructions. Alternatively, or in addition, a programmable hardwareelement such as an FPGA (field-programmable gate array) that isconfigured to perform any of the method embodiments described herein, orany portion of any of the method embodiments described herein, may beincluded as part of the AP 102 and/or the STA 106.

FIG. 3—Exemplary Block Diagram of a Wireless Device

FIG. 3 illustrates an exemplary block diagram of a wireless device 300,which may be configured for use in conjunction with various aspects ofthe present disclosure, according to some embodiments. The device 300may be any of a variety of types of device and may be configured toperform any of a variety of types of functionality. For example, thedevice 300 may be a substantially portable device (e.g., a mobiledevice), such as a mobile phone, a personal productivity device, acomputer or a tablet, a wearable device, a handheld gaming console, aportable media player, etc. Alternatively, the device 300 may be asubstantially stationary device, such as a television, a subwoofer,speaker, or other audio rendering device, a wireless access point, aset-top box, etc., if desired.

As shown, the device 300 may include a processing element 304. Theprocessing element 304 may include or be communicatively coupled to oneor more local and/or system memory elements, such as memory 302. Memory302 may include any of a variety of types of memory and may serve any ofa variety of functions. For example, memory 302 could be RAM serving asa system memory for processing element 304. Other types and functionsare also possible.

The device 300 may also include wireless communication circuitry 306.The wireless communication circuitry 306 may include analog and/ordigital circuitry components, and may alternatively be referred to as a‘radio’. In general, a radio may include any combination of a basebandprocessor, analog RF signal processing circuitry (e.g., includingfilters, mixers, oscillators, amplifiers, etc.), or digital processingcircuitry (e.g., for digital modulation as well as other digitalprocessing). Similarly, the radio may implement one or more receiveand/or transmit chains using the aforementioned hardware. For example,the wireless device 300 may share one or more parts of a receive and/ortransmit chain between multiple wireless communication technologies(e.g., multiple communication interfaces), such as those discussedabove. The wireless communication circuitry also may include or becoupled to one or more antennas 308.

Note that if desired, the wireless communication circuitry 306 mayinclude a discrete processing element in addition to processing element304; for example, processing element 304 may be an ‘applicationprocessor’ while wireless communication circuitry 306 may include itsown ‘baseband processor’; alternatively (or in addition), processingelement 304 may provide processing capability for the wirelesscommunication circuitry 306. The device 300 may be capable ofcommunicating using any of various wireless communication technologiesby way of wireless communication circuitry 306 and antenna(s) 308.

The device 300 may additionally include any of a variety of othercomponents (not shown) for implementing device functionality, dependingon the intended functionality of the device 300, which may includefurther processing and/or memory elements, one or more power supplyelements (e.g., which may rely on battery power and/or an external powersource), user interface elements (e.g., display, speaker, microphone,camera, keyboard, mouse, touchscreen, etc.), additional communicationelements (e.g., antenna(s) for wireless communication, I/O ports forwired communication, communication circuitry/controllers, etc.) and/orany of various other components.

The components of the device 300, such as processing element 304, memory302, wireless communication circuitry 306, and antenna(s) 308, may beoperatively coupled via one or more intra-chip or inter-chipinterconnection interfaces, which may include any of a variety of typesof interface, possibly including a combination of multiple types ofinterface. As one example, a USB high-speed inter-chip (HSIC) interfacemay be provided for inter-chip communications between processing element304 and wireless communication circuitry 306. Alternatively (or inaddition), a universal asynchronous receiver transmitter (UART)interface, a serial peripheral interface (SPI), inter-integrated circuit(I2C), system management bus (SMBus), and/or any of a variety of othercommunication interfaces may be used for communications betweenprocessing element 304, memory 302, wireless communication circuitry306, and/or any of various other device components. Other types ofinterfaces (e.g., peripheral interfaces for communication withperipheral components within or external to device 300, etc.) may alsobe provided as part of device 300.

As described herein, the device 300 may include hardware and softwarecomponents for implementing features for operation in high density IEEE802.11 wireless communication systems, such as those described hereinwith reference to, inter alia, FIGS. 4-14.

FIG. 4—Flowchart Diagram

Under some conditions, multiple devices attempting to join (e.g.,contending for resources of) a network may experience congestion andassociated delays. If multiple devices attempt to transmit packets onthe network concurrently, the packets may collide. As a result of such acollision, none of the devices may successfully utilize the network, andall of the devices may start the contention process again.

FIG. 4 is a flowchart diagram illustrating a method that may be used forperforming wireless communication in a wireless communication system,such as an IEEE 802.11 wireless communication system, according to someembodiments. The method may be used to improve performance in thewireless communication system, in particular by providing a way forwireless devices to quickly and effectively contend for resources. Inparticular, the method may be a means to select a single device, e.g.,of multiple contending devices, to transmit a packet on a channel of thesystem. The method may operate by randomly determining which one ofmultiple devices may transmit a packet following completion of themethod. Other devices (e.g., all devices that may have contended, butwere not selected) may restart the method to contend again. The methodmay iterate as needed, including as new devices begin to contend and asother devices cease contending (e.g., after transmitting a packet).

Among other implementations, various embodiments of this method may beused, for example, in an ad-hoc network with several devices (e.g.,“new” devices) attempting to access the network without a pre-existingconnection to the network. For example, embodiments of the method mayallow for efficient determination of which device will transmit, andthus may reduce the delay associated with collision as described above.Additionally, in some embodiments, the method may be interoperable withlegacy devices and networks (e.g., legacy devices may experienceperformance comparable to the performance of legacy methods), while alsopreserving fairness. For example, the opportunity to access a channelmay be distributed equally among all devices, including those that arenew to the network. Further, embodiments discussed herein may improvethroughput and latency (e.g., in congested channels).

As a general (e.g., non-limiting) overview, the method may beimplemented by a wireless device attempting to access (e.g., transmiton) a network. The method may include: performing a legacy process,generating a random number including N bits, sequentiallyadvertising/transmitting each bit of the random number onto the wirelessnetwork over N successive time slots (e.g., in accordance with theprocess rules) in order to determine if the wireless device has thelargest random number relative to other wireless devices contending foraccess to the wireless network (e.g., to compare the random number ofthe device to any other devices), halting the sequentiallyadvertising/transmitting if the random number of the wireless device issmaller than that of another wireless device contending for access, andgaining access to the wireless network in response to determining thatthe random number generated by the wireless device is larger than therandom numbers of the other wireless devices also contending for accessto the wireless network.

Aspects of the method of FIG. 4 may be implemented by a wireless device,such as UE 106 or wireless device 300 illustrated in and described withrespect to FIGS. 1-3, or more generally in conjunction with any of thecomputer systems or devices shown in the above Figures, among otherdevices, as desired. Note that while at least some elements of themethod of FIG. 4 are described in a manner relating to the use ofcommunication techniques and/or features associated with IEEE 802.11specification documents, such description is not intended to be limitingto the disclosure, and aspects of the method of FIG. 4 may be used inany suitable wireless communication system, as desired. In variousembodiments, some of the elements (or operations) of the methods shownmay be performed concurrently, in a different order than shown, may besubstituted for by other method elements, or may be omitted. Additionalmethod elements may also be performed as desired. As shown, the methodmay operate as follows.

In 402, the wireless device may perform a legacy process (e.g., a legacyaccess process, such as specified in prior communication standard(s))for contending for transmission resources (e.g., access to acommunication medium). In some embodiments, the legacy process may beenhanced distributed channel access (EDCA) as defined in IEEE 802.11specifications. For example, one or more wireless devices that arecapable of operating as described herein may operate in conjunction withone or more legacy devices to access a shared medium, such as aWi-Fi/802.11 network, where the term “legacy device” refers to a devicethat is not configured to include the techniques described herein. Inother words, the wireless devices (e.g., legacy or non-legacy) maycontend with each other for network access. The one or more wirelessdevices capable of operating as described herein and the one or morelegacy devices may first perform a legacy process for accessing theshared medium (e.g., the Wi-Fi network). The legacy process may be aform of the traditional Carrier Sense Multiple Access (CSMA) and/or CSMAwith collision avoidance (CSMA/CA) method used in existing Wi-Fi/IEEE802.11 networks.

Executing the legacy process may result in collisions on the sharedmedium and/or detection of traffic on the shared medium, which may causeeach of the various devices to “backoff” for a random amount of timebefore again attempting to communicate on the network. Thus, the legacyprocess may include the wireless device waiting for the duration of abackoff period, e.g., as in EDCA. In some instances, the wireless devicemay attempt to communicate on the network and detect no collisions, andhence be granted immediate access to the network according to the legacyprocess. In other words, a backoff period may not be used if nocollision or traffic is detected. In other instances, when the wirelessdevice attempts to communicate on the network and a collision and/ortraffic is detected, the legacy process using a backoff period may beimplemented.

During the legacy access process, the backoff period for each wirelessdevice may be determined randomly (e.g., truly randomly orpseudo-randomly). The start of the backoff period may not occur untilthe medium (e.g., channel) has been idle for at least a predeterminedperiod of time, e.g., a distributed coordination function (DCF)Interframe Space (DIFS) duration.

The backoff period may be determined according to various air accessparameters. Such parameters may include the duration of a contentionwindow (CW). For example, the backoff period may be a fraction of theCW. The backoff period may include multiple time slots (e.g., slots).Each slot may have a duration, e.g., 9 microseconds (e.g., 9 μs or 9 usor 9 usec). For example, the device may draw a random number N between 0and CW. Thus, in one embodiment the duration of the backoff period maybe N*9 μs.

Once the backoff period has begun, the device may decrement a timer(e.g., a CW timer or backoff timer) while the medium is idle. Forexample, during each slot in the backoff window, the value of the timermay be decreased by 1 (or other such value). If at any point while thetimer is running, the channel is used by another device, the value ofthe timer may be reset to N. Following such a reset, the value of thetimer may begin decrementing again when the channel is idle.

In some embodiments, the legacy process may not be used, e.g., in caseswhere no legacy devices are present or participating. For example, inscenarios in which all devices may be capable of operating according tothe methods described herein, the legacy access process may not be used(and hence no backoff periods are used). In such cases, the legacyaccess process and its accompanying backoff periods may unnecessarilydelay selection of a device for transmission, and thus the method mayproceed directly to the improved access method described herein, withoutfirst attempting the legacy access process.

Following the expiration of the backoff period as part of the legacyprocess, the one or more devices that are capable of implementing thetechniques described herein (e.g., the non-legacy devices orEWAP-capable devices) may begin the contention process described inoperations 404—408. This contention process may be referred to as theEWAP protocol. Legacy wireless devices may not participate in the EWAPprotocol contention process; instead, during the pendency of the EWAPprocess, the transmissions of the EWAP devices may be configured tocause legacy devices to remain silent, e.g., according to the legacyprocess. The EWAP protocol may be considered a “tie breaker process” ora “highest number contention operation”. Each EWAP-capable wirelessdevice may generate a random number having N bits (e.g., the number,expressed in binary may have a bit length of N bits) and then eachwireless device may advertise or broadcast the values of its randomnumber, according to the process, until one device (having the highestrandom number) gains access to the medium. Note that, although at leastsome of the embodiments of EWAP described herein are described in termsof high random numbers, embodiments with other decision rules, e.g.,based on low random numbers, among other possibilities are contemplated.The EWAP protocol is described in greater detail below for an exemplaryindividual EWAP-capable device.

In 404, the device may generate a random (e.g., truly random orpseudo-random) number. The random number may have been previouslydetermined with the random duration of the backoff period in 402, or maybe determined separately e.g., at the beginning of the EWAP protocol. Insome embodiments, a single random number of, e.g., 10 bits may bedetermined and the first bits (e.g., first 4 bits) may be used todetermine the backoff period and the second bits (e.g., the remaining 6bits) may be used for subsequent steps. Other embodiments can beimplemented using other bit lengths for the first bits and/or the secondbits. The random number(s) determined in this step may all have an equalnumber of bits, e.g., all contending devices may select random numberswith the same number of bits. In other words, the random number may beselected from a range between zero and some maximum value. In someembodiments, the maximum value may be a power of 2 minus 1 (e.g., in thecase of a 6-bit random number: (2̂6)−1=63). The number of bits can beconfigured as desired.

In 406, the device may sequentially (e.g., consecutively, e.g.,beginning with the most significant bit) advertise the bits of therandom number, by broadcasting/transmitting the bits onto the sharedmedium (the Wi-Fi network) in accordance with the rules (e.g., asdescribed herein or as configured). The sequentially advertised bits maybe advertised over the course of an advertisement window (AW), e.g.,with one bit advertised in each slot. Thus, in the case that the randomnumbers have N bits, the duration of the AW may be N multiplied by theduration of a slot (e.g., N*9 μs). In some embodiments, more than onebit may be advertised during a slot. In some embodiments, the last bitmay be the least significant bit, e.g., the bits may be advertised inorder of decreasing significance.

Beginning with the first bit of the bits to be sequentially advertised,the device may determine whether to advertise (broadcast) the bit, e.g.,based on whether the bit meets a condition. For example, if the value ofthe bit is equal to 1, the bit may be advertised (broadcast on the Wi-Finetwork). To advertise a bit, the device may transmit the value of thebit on the Wi-Fi network during a slot. For example, if the value of thefirst bit is one, the wireless device transmits a 1 during the firstslot of the AW. During a slot in which the device advertises a bit(e.g., transmits a 1), the device may ignore whether other devices aretransmitting on the channel. Following the end of the slot, the devicemay proceed (e.g., advance or move) to the next bit. Thus, each devicehaving a random number with a value of 1 for the present bit willtransmit.

In the case that a bit does not meet the condition (e.g., in the casethat the bit is equal to 0), then in some embodiments the wirelessdevice may not transmit the bit. During the slot associated with such abit, the device may monitor the channel to determine whether at leastone other device advertises a bit (e.g., transmits a bit equal to 1);thus, the device may compare its random number to the random number(s)of any other devices contending for access. The device may also transmitduring a portion or partition of the slot, e.g., in order to demonstrateto other devices (e.g., non-EWAP capable devices, also called legacydevices) that the channel is not clear (e.g., that CCA is set).

In the case (e.g., a first sub-case) where the wireless device has a 0value for its bit (e.g., a current bit), and the wireless devicedetermines that another device has transmitted a bit (e.g., has a valueequal to 1 for the current bit of its number) during such a slot, thedevice may determine that its random number (e.g., sequence of bits)does not entitle the device to gain access to the medium (e.g., becauseits random number is not the highest). In this case, the device maydiscontinue the current EWAP contention process (e.g., may halt/stopsequentially transmitting any remaining bits) and begin anew tore-contend for permission to transmit on the network. Accordingly, thedevice may, at 408, restart the process of contending for access (e.g.,may return to 402 or to 404, according to various embodiments). Randomnumbers may be redrawn at 402 or 404, or they may be reused (e.g.,retained). According to some embodiments, such devices restarting theprocess may enter a passive or lower power state (e.g., depower somecommunication circuitry and/or sleep) for a period. In someimplementations, the period may be equal to the remainder of the presentAW.

In the case (e.g., a second sub-case) that no other device transmits abit during such a slot, the device may proceed to advertise the next bitduring the next time slot. In this second sub-case, each of theEWAP-capable devices has a 0 value in the current bit position of theirrespective random numbers, and thus since there is no “loser” in thisinstance (no device has a higher number than another), all devices incontention at the current bit/slot may advance (e.g., move) to the nextbit/slot.

Following the sequential advertisement of all of the bits (e.g., afteradvertising the last, or least significant, bit of the random number), adevice may determine that it is selected to transmit following the AW.Such a device may be the only device that has not restarted the process(e.g., via 408) due to another device transmitting a bit (e.g., a 1)during a slot in which the device was not transmitting (e.g., becauseits bit was 0 for that slot). Thus, in some embodiments, the device withthe highest random number (e.g., higher than that of any othercontending device) will be the device that is selected to gain access tothe shared medium.

Accordingly, following the expiration of the AW, at 410, the device maytransmit one or more packets to at least one other device on the network(e.g., and may thus gain access to the wireless medium). The packet(s)may include a MAC protocol data unit (MPDU) or aggregated MPDU (AMPDU).Such an MPDU may be encapsulated, e.g., in a PHY layer PDU (PPDU).

Note that there may be a non-zero probability that two (or more) deviceshave determined that they each are the selected device, and thus thetransmissions of such devices may collide. The probability of such acollision may decline exponentially with the number of bits in therandomly generated numbers (e.g., duration of the AW).

FIG. 5—Timing Diagram of Enhanced Distributed Channel Access (EDCA)

In some embodiments, EDCA may operate as shown in FIG. 5. A devicecontending to transmit on a WLAN may defer access while the medium(e.g., channel of the WLAN) is busy. A device may further defer accessuntil the medium has been idle (e.g., free or unused) for an amount oftime equal to at least a DIFS. The DIFS may be greater than a shortinterframe space (SIFS) or point coordination function (PCF) interframespace (PIFS). Following the DIFS, the device may wait a random number ofslots (e.g., a backoff window) during a contention window (CW). If themedium is used by another device during the backoff window, the devicemay restart the backoff window after the medium has been idle for aDIFS. Following expiration of the backoff window, the device may attemptto transmit a packet. For example, as in the illustrated scenario, thebackoff window may include five slots (e.g. based on the random numberof the device). Thus, the device may begin transmitting in the sixthslot if no other device transmits during the first five slots.

FIG. 6—Timing Diagram of Multiple Devices Contending Using EWAP

FIG. 6 illustrates the contention between five devices (e.g., STA1-STA5)for transmission using an embodiment of the EWAP process. Four of thestations (e.g., STA1-STA4) may be devices capable of implementing EWAP,and the fifth (e.g., STA5) may be a legacy device not capable ofimplementing EWAP. As will be appreciated, the random elements (e.g.,backoff period durations, random numbers, etc.) shown and describedherein are illustrative examples, and other outcomes/values of theserandom elements are possible. Further, different numbers of contendingdevices (e.g., legacy and/or EWAP-capable devices) are possible.

Each of the STAs may receive a packet including a Network AllocationVector (NAV). The NAV may represent a logical (e.g., virtual) clearchannel assessment (CCA). Based on the duration field in the MAC header,the STAs may set their NAV (e.g., start a timer based on the duration)and refrain from accessing the medium during that duration of time,according to some embodiments. In other words, the duration field maysignal the STAs that the channel will be busy for an amount of time(e.g., the duration), and may become available following the duration.

Following the expiration of the NAV at 602, the STAs may operateaccording to EDCA (e.g., as described above). In the illustratedexample, each of the STA1-STA4 may complete the backoff window at thesame time, e.g., at 604. In other words, the randomly determined lengthof the backoff period of STA1-STA4 may be equal, and the backoff periodof STA5 may be greater than that of STA1-STA4. Note that if (e.g., in analternative example, different from the illustrated example) the backoffperiod of any individual STA were less than all of the other STAs'backoff periods, that STA may be selected to transmit.

Beginning at 604, each of STA1-STA4 may sequentially advertise the bitsof their random numbers, e.g., beginning with the first (e.g., mostsignificant) bit. In the illustrated case, the first bit for each ofSTA1-STA4 may be one, and thus each of STA1-STA4 may transmit during thefirst slot. Thus, the backoff window of STA5 may be reset at 604 due todetecting the transmissions of the other devices beginning at that time,according to some embodiments. The second bit for each of STA1-STA4 mayalso be one, so they may also transmit during the second slot.

At 606, during the slot associated with the third bit, STA1 may nottransmit (e.g., it may instead receive (e.g., RX) because its third bitis 0), and may detect that at least one other STA is transmitting a 1.Therefore, STA1 may determine that it is not selected to transmit atthis time and may restart the contention process, according to someembodiments.

Similarly, at 608, during the slot associated with the fourth bit, STA2may determine that it is not selected to transmit (e.g., because itsfourth bit is 0, and at least one other STA is transmitting a 1), andmay thus restart the process. Similarly, at 610, STA3 may determine thatit is not selected and may restart, according to some embodiments.

At 612, STA 4 may not transmit its bits (e.g., because its 8^(th) and10^(th) bits are zeroes), and may detect that no other STA istransmitting a 1 during these times. In other words, STA4 may monitorthe channel and detect that the channel is clear (e.g., CCA is clear andtransmission energy is not detected), according to some embodiments.

The advertising window (AW) may expire at 614. At this time, STA4 maydetermine that it is selected to transmit (e.g., because no other devicetransmitted a 1 during a slot in which it was receiving during the AW).Therefore, STA4 may prepare to transmit (e.g., pre-transmissionfunctions) at the conclusion of the AW and then may begin to transmit apacket, according to some embodiments.

STA5 may not transmit at any point during the illustrated sequencebecause it may never detect that the medium has been idle for at least aDIFS after time 604, according to some embodiments. For example, otherdevices (e.g., STA1-STA3 as well as STA5) may also detect the clearchannel at 612, but because the channel is only clear for one slot at atime (e.g., less than DIFS), such other devices may not begin totransmit.

FIG. 7—EWAP Construction

FIG. 7 illustrates an exemplary construction of an EWAP communication,according to some embodiments.

As shown, the random sequence of bits for advertisement during the AWmay include 6 bits. However, it is possible to use a random sequencewith a greater or lesser number of bits. Note that the values of thebits shown are exemplary and that other values are possible. Anadditional slot, e.g., a seventh slot (e.g., “T”), may be included inthe AW for pre-transmission functions (e.g., initiating the radio,preparing the remainder of the communication, etc.). According to someembodiments, during the pre-transmission slot, the device may performtransmissions so that other devices will not decrement their timers(e.g., and may reset their CW timers), will determine that the CCA isnot clear, and will not transmit in the subsequent period. Such atransmission may avoid or reduce the likelihood of collisions for theremainder of the communication. Following the AW is the PHY preamble andheader information, and then a service data unit (SDU). The SDU may be aphysical layer SDU (PSDU) or a MAC layer SDU (MSDU), according to someembodiments. In some embodiments, following the AW, the remainder of thepacket (e.g., frame or transmission) may be, e.g., an MPDU or AMPDUaccording to 802.11 standards.

FIGS. 8-11—EWAP Slot Partition Details

According to some embodiments, slots may be subdivided, e.g., into slotpartitions or slot portions. FIGS. 8-11 illustrate exemplarypartitioning.

FIG. 8 illustrates the duration of a single slot (e.g., a 9 μs slot)divided into slot partitions, according to some embodiments. The slot isshown for three devices: an EWAP capable device with a bit equal to 1(e.g., bit 1) for the slot, an EWAP capable device with a bit equal to 0(e.g., bit 0) for the slot, and a legacy device (e.g., non-EWAPcapable).

It will be noted that the times (e.g., durations) and arrangements ofpartitions shown in FIGS. 8-11 are exemplary only, and that thedurations of the slots and slot partitions may be configured as desired.Further, the order of slot partitions may be changed, or some slotpartitions may be skipped, or still other partitions may be added,according to some embodiments.

During the first 2 microseconds, 802, (e.g., μs, usec, or us), each ofthe EWAP devices may complete pre-transmission activities, according tosome embodiments.

During the next 3 μs, 804, both of the EWAP devices may transmit. Thepurpose of these transmissions may be to convey to other devices (e.g.,legacy devices) that the channel is not clear (e.g., the CCA is set).The devices may transmit any of a variety of signals during this time.In some embodiments, the EWAP device with bit 1 may transmit a 1.

The combination of time periods 802 and 804 may be considered a CCAcheck for transmission (TX). During this time, legacy devices may checkCCA, and transmissions from EWAP devices (e.g., including those with bit0) may cause them to determine that the CCA is not clear, and thusprevent them from transmitting, according to some embodiments.

During the next 1 μs, 806, the EWAP device with bit 0 may prepare toreceive (e.g. pre RX), according to some embodiments. At the same time,the EWAP device with bit 1 may transmit the value of the bit (e.g., 1).

During the final 3 μs, 808, the EWAP device with bit 1 may continue totransmit the value of the bit (e.g., 1). At the same time, the EWAPdevice with bit 0 may receive. During this time, the EWAP device withbit 0 may detect the 1 transmitted by the EWAP device bit 1. Therefore,the EWAP device bit with 0 may determine that the CCA is set (e.g., isnot clear) and may abort the Advertisement Window (AW). Accordingly, theEWAP device with bit 0 may restart the contention (e.g., EWAP) process.

During the entire 9 μs, the legacy device may receive and may nottransmit on the channel. As the slot progresses (e.g., at 804, 806,and/or 808), the device may detect the transmissions from one or more ofthe EWAP devices and may determine that the CCA is not clear (e.g., isset). Accordingly, the legacy device may therefore reset its timer andmay continue the EDCA process.

The combination of time periods 806 and 808 may be considered a CCAcheck for EWAP devices. In other words, EWAP devices with a bit 0 mayreceive and may detect transmission energy from one or more otherdevices (e.g., EWAP devices with bit 1) during this CCA check period.

Following 808, the EWAP process may proceed to the next slot, or mayconclude (e.g., with a transmission of an MPDU by the EWAP device withbit 1).

FIG. 9 is a similar timing diagram, depicting a legacy device and anEWAP device with bit 0, according to some embodiments.

During 902, the EWAP device may perform pre-transmission functions.During 904, it may transmit. By the end of 904, the legacy device maydetermine that the CCA is set, and therefore may determine not totransmit in the next slot (e.g., or longer, e.g., it may reset its CWtimer).

During 906, the EWAP device may perform pre-reception functions. During908, it may perform reception, and it may not receive any transmissionson the channel. Therefore, at the end of 908, it may determine that theCCA is clear, and it may continue the AW in the next slot. For instance,it may advertise the next bit of its random number. If, alternatively,the bit in the current slot is the final bit of its random number (e.g.,last bit in the AW), it may proceed to transmit a packet.

FIG. 10 illustrates the duration of the final two slots (e.g., two, 9 μsslots) at the end of an AW and the beginning of a subsequent packettransmission, according to some embodiments. The slots are shown forthree devices, similar to FIG. 8: an EWAP capable device with a bitequal to 1 for the first slot, an EWAP capable device with a bit equalto 0 for the first slot, and a legacy device (e.g., non-EWAP capable).The first illustrated slot may be the final slot for advertising a digitof the random number. The second illustrated slot may be apre-transmission slot (e.g., as denoted by “T” in FIG. 7 and describedabove). The second slot may be considered the final slot in the AW, eventhough no bit may be advertised during this slot.

During 1002, the EWAP devices may perform a CCA check for transmissionas described above, e.g., may perform pre TX followed by transmission.The legacy device may not transmit and may receive, according to someembodiments.

During 1004, the EWAP device with bit 1 may transmit the bit value. TheEWAP device with bit 0 may perform pre-reception and receptionfunctions. It may detect the transmission of the 1-bit value from theEWAP device with bit 1, and therefore may determine that it is notselected for transmission following the AW. Further, it may determinenot to transmit for the remainder of the illustration (e.g., it mayrestart the contention process). The legacy device may continue toreceive. At the end of 1004, the first illustrated slot may end, and thefinal slot of the AW (e.g., the second illustrated slot) may begin.

During 1006, the EWAP device with bit 1 may perform pre-transmissionfunctions, according to some embodiments. The other devices may continueto receive.

During 1008, the EWAP device with bit 1 may transmit. Such atransmission may cause other devices to determine that the channel isnot idle, and may therefore reduce the likelihood of collision,according to some embodiments. The other devices may continue toreceive.

During 1010, the EWAP device with bit 1 may perform pre-transmissionfunctions, according to some embodiments. The other devices may continueto receive. The second illustrated slot (e.g., the final slot of theAW), may conclude.

During 1012, the next frame may begin. The EWAP device with bit 1 maytransmit a packet (e.g., a frame). The frame may be a physical layerprotocol data unit (PPDU), according to some embodiments. It may includea header and a data unit, e.g., as shown in FIG. 7. The other devicesmay continue to receive. Following the transmission of the packet, oneor more other devices (e.g., the other illustrated devices and/oradditional devices) may begin the process of contending for transmissionresources again, e.g., by monitoring for the channel to be clear for atleast a DIFS period.

FIG. 11 illustrates the duration of the final two slots (e.g., two, 9 μsslots) at the end of an AW and the beginning of a subsequent packettransmission, according to some embodiments. The slots are shown for twodevices, similar to FIG. 9: an EWAP capable device with a bit equal to 0for the first illustrated slot and a legacy device (e.g., non-EWAPcapable). The first illustrated slot may be the final slot foradvertising a digit of the random number. The second illustrated slotmay be a pre-transmission slot and may be the final slot in the AW.

The first slot may proceed similarly to FIG. 9. During 1102, the EWAPdevice may perform pre-transmission and transmission, and suchtransmission may discourage other devices from attempting to access thechannel in the subsequent periods. For instance, the legacy device maydetect this transmission, determine that the CCA is set (e.g., that thechannel is not clear), and reset its CW timer, according to someembodiments.

During 1104, the EWAP device may perform pre-reception and reception.During the reception period, the EWAP device may determine that no othertransmissions are detected on the channel (e.g., CCA may be clear).Accordingly, the EWAP device may determine that no other device has ahigher random number (e.g., no other random number is associated withmore priority for transmission). In other words, notwithstanding a zeroin the last digit, the EWAP device may have the highest number, and thusmay be selected by the EWAP contention process to transmit its packetfollowing the AW.

At the beginning of the next slot (e.g., the final slot in the AW), theEWAP device may, in 1106, perform pre-transmission functions. Suchpre-transmission may last for 2 μs, according to some embodiments.During 1108, the EWAP device may transmit for 3 μs, according to someembodiments. Accordingly, the legacy device may detect this transmissionand may again determine that the CCA is not clear.

During 1110, the EWAP device may perform pre-transmission functions. Inparticular, according to some embodiments, the device may prepare apacket for transmission. The second illustrated slot (e.g., the finalslot of the AW) may conclude.

During 1112, the EWAP device may transmit a packet, e.g., a PPDU.Following the PPDU transmission, other devices may detect that thechannel is idle and may therefore begin contending for transmissionresources, according to some embodiments.

FIG. 12—EDCA and EWAP Slot Counting Summary

FIG. 12 is a timing diagram illustrating a possible collision between anEWAP device and a legacy device in the case that their CW timers expireat the same time, according to some embodiments.

Devices 1201 and 1202 may be EWAP capable devices. Device 1203 may be alegacy device. Device 1204 may be an EWAP capable device or may be alegacy device. This combination of devices is illustrative only, and thetechniques of this disclosure may be applied to other combinations, asdesired. Further, the random elements illustrated are exemplary only,and other values and outcomes are possible according to variousembodiments.

During slot 1210, all of the devices may be in the EDCA backoff period.Devices 1201, 1202, and 1203 may be in the last slot of the backoffperiod (e.g. EDCA Backoff Count equal to 1). Device 1204 may have twoslots remaining in the backoff period (e.g., EDCA Backoff Count equal to3). Accordingly, each of the devices may receive during this slot, andno transmissions may be detected.

During slot 1220, the backoff period for devices 1201, 1202, and 1203may expire. The (EWAP capable) devices 1201 and 1202 may begin the EWAPprocess and both devices may have a 0 to advertise in this slot.Accordingly, during this slot the devices may perform a series offunctions (e.g., similar to that shown in and described with respect toFIGS. 8 and 9), according to some embodiments. The series of functionsmay include transmission and/or reception. The (legacy) device 1203,however, may begin transmitting a packet (e.g., an MPDU) from thebeginning of this slot. This transmission may collide with thetransmissions of devices 1201 and/or 1202. Device 1203, however, may notdetect a collision. Device 1204 may detect the transmissions of one ormore of the other devices and may determine that the channel is notidle. Accordingly, device 1204 may reset its CW timer and may beginwaiting for the channel to be idle.

According to some embodiments (e.g., as illustrated), devices 1201and/or 1202 may detect the transmission of device 1203 during this time,but may not stop the EWAP process. In at least some instances, this maybe because devices 1201 and/or 1202 do not recognize the transmission ofdevice 1203 as being a 1 transmitted by an EWAP device. According toother embodiments, device 1201 and 1202 may detect the transmission ofdevice 1203, and may restart the EWAP process, e.g., to avoid acollision with the transmission of device 1203.

During slot 1230, device 1201 may sequentially advertise a 1 and device1202 may advertise a zero. Accordingly, these devices may performfunctions during the slot as shown in FIGS. 8 and 9, according to someembodiments. Device 1202 may detect the 1 advertised by device 1201, andmay determine that it is not selected to transmit following the AW.Accordingly, device 1202 may reset its timers and begin waiting torestart the EDCA/EWAP process when the channel is idle (e.g., CCAclear). Device 1203 may continue transmitting its packet and device 1204may continue waiting for the CCA to clear.

Prior to and during slot 1240, device 1201 may continue to sequentiallyadvertise the bits of its random number. As shown, the last bit (e.g.,the bit to be advertised in slot 1240) may be a 0. Devices 1202 and 1204may continue to receive and wait for CCA clear. Device 1203 may continuetransmitting.

During slot 1250, device 1201 may prepare to transmit its packet (e.g.,as shown in and described with respect to FIGS. 10 and 11), according tosome embodiments. Devices 1202 and 1204 may continue to receive and waitfor CCA clear. Device 1203 may continue transmitting.

During slot 1260, device 1201 may begin to transmit its packet. Thispacket may collide with the ongoing transmission of device 1203. Devices1202 and 1204 may continue to receive and wait for CCA clear.

Note that in the absence of device 1203, no collision may occur in thesequence illustrated by this figure. Such a collision may be possible inthe specific case illustrated, e.g., in the case that the EDCA backofftimer of at least one legacy device expires at the same time as at leastone other device, whether legacy or EWAP. However, in the absence of alegacy device's CW timer expiring at the same time as the CW timer ofanother device, such collisions may be avoided. For instance, even ifdevice 1204 is a legacy device, it may detect the transmissions of theEWAP devices 1201 and 1202 during slot 1220, and may accordingly avoidtransmitting during the illustrated time period.

FIGS. 13 and 14—Performance Comparison of EDCA vs. EWAP

FIGS. 13 and 14 may illustrate performance comparisons of networks withdifferent numbers of devices under EWAP techniques vs. EDCA techniques.FIG. 13 illustrates a case of 20 devices (e.g., 20 dev.), and FIG. 14illustrates a case of 10 devices (10 dev.). The first column of eachtable shows results for EWAP using a 6 bit (e.g., 6 b) random number forthe AW period (e.g., N=6 bits, similar to shown in FIG. 7). Theremaining columns illustrate the results of EDCA with different CW timersettings (e.g., ranging from CW=15 slots to CW=1023 slots). As shown,the packet latency and collision ratio of the EWAP systems may be lowerthan the EDCDA systems, and the net throughput (Net TP) may be higher.

Further Exemplary Embodiments

In the following, further exemplary embodiments are described.

One set of embodiments may include a method for accessing a wirelessnetwork by a first wireless device, the method comprising: generating arandom number comprising N bits; sequentially advertising one or morebits of the random number onto the wireless network over N successivetime slots, wherein the sequentially advertising comprises: if the bithas a value of 1 in a respective time slot, transmitting a 1 andadvancing to the next bit in the random number, and if the bit has avalue of 0 in the respective time slot, determining if another devicetransmits a 1 during the respective time slot, wherein if another devicetransmits a 1 during the respective time slot, halting the sequentiallyadvertising and wherein if no other device transmits a 1 during therespective time slot, advancing to the next bit in the random number;and after sequentially advertising the Nth bit, transmitting a packet tothe wireless network.

According to some embodiments, the wireless network may comprise an802.11 network.

According to some embodiments, the method may further comprise:completing a legacy channel access process prior to sequentiallyadvertising one or more bits of the random number.

According to some embodiments, halting sequentially advertising mayfurther comprise restarting the method if the bit has a value of 0 andanother device transmits a 1 during the respective time slot.

Another exemplary embodiment may include a wireless device, comprising:a radio and a processing element, wherein the radio and the processingelement are configured to communicate with a wireless network, saidcommunication comprising: randomly select a number comprising a firstsequence of bits and a second sequence of bits; wait a duration, whereinthe duration is based on the first sequence of bits. For each of thesecond sequence of bits: when the bit is equal to a first value,transmit the bit and move to the next bit; and when the bit is not equalto the first value, determine if another device on the wireless networktransmits a bit equal to the first value, and: when at least one otherdevice does transmit a bit equal to the first value, restart thecommunication by randomly selecting a new number; and when no otherdevice does transmit a bit equal to the first value, transmit at leastone packet on the wireless network.

Another exemplary embodiment may include a method for contending foraccess to a wireless network by a first wireless device, the methodcomprising: generating a random number comprising N bits; sequentiallytransmitting each bit of the random number onto the wireless networkover N successive time slots, wherein the sequentially transmittingdetermines if the wireless device has the largest random number relativeto other wireless devices contending for access to the wireless network;and halting the sequentially transmitting in response to determiningthat the random number of the wireless device is smaller than a randomnumber of another wireless device also contending for access to thewireless network; gaining access to the wireless network in response todetermining that the random number of the wireless device is larger thanthe random numbers of the other wireless devices also contending foraccess to the wireless network.

Another exemplary embodiment may include a wireless device, comprising:an antenna; a radio coupled to the antenna; and a processing elementoperably coupled to the radio, wherein the device is configured toimplement any or all parts of the preceding examples or detaileddescription.

A further exemplary set of embodiments may include a non-transitorycomputer accessible memory medium comprising program instructions which,when executed at a device, cause the device to implement any or allparts of any of the preceding examples or

DETAILED DESCRIPTION

A still further exemplary set of embodiments may include a computerprogram comprising instructions for performing any or all parts of anyof the preceding examples or detailed description.

Yet another exemplary set of embodiments may include an apparatuscomprising means for performing any or all of the elements of any of thepreceding examples or

DETAILED DESCRIPTION

In some embodiments, a non-transitory computer-readable memory mediummay be configured so that it stores program instructions and/or data,where the program instructions, if executed by a computer system, causethe computer system to perform a method, e.g., any of the methodembodiments described herein, or, any combination of the methodembodiments described herein, or, any subset of any of the methodembodiments described herein, or, any combination of such subsets.

In some embodiments, a device (e.g., a STA) may be configured to includea processor (or a set of processors) and a memory medium, where thememory medium stores program instructions, where the processor isconfigured to read and execute the program instructions from the memorymedium, where the program instructions are executable to implement anyof the various method embodiments described herein (or, any combinationof the method embodiments described herein, or, any subset of any of themethod embodiments described herein, or, any combination of suchsubsets). The device may be realized in any of various forms.

Although the embodiments above have been described in considerabledetail, numerous variations and modifications will become apparent tothose skilled in the art once the above disclosure is fully appreciated.It is intended that the following claims be interpreted to embrace allsuch variations and modifications.

We claim:
 1. A wireless device, comprising: a radio; and a processingelement; wherein the radio and the processing element are configured tocontend for access to a medium, said contention comprising: selecting arandom number comprising N bits; sequentially, for each of at least asubset of the N bits: transmitting, when the bit is equal to a firstvalue, the bit on the medium and transitioning to the next bit; anddetermining, when the bit is not equal to the first value, if anotherdevice transmits a bit on the medium, and: when at least one otherdevice transmits a bit, restarting the contention; and when no otherdevice transmits a bit, transitioning to the next bit; and transmittingat least one packet on the wireless network.
 2. The wireless device ofclaim 1, wherein determining if another device transmits a bit on themedium comprises transmitting on the medium during a first slotpartition.
 3. The wireless device of claim 1, wherein determining ifanother device transmits a bit on the medium comprises monitoring for atransmission of another device on the medium during a second slotpartition.
 4. The wireless device of claim 1, wherein the first valueis
 1. 5. A method for contending for access to a wireless network by awireless device, the method comprising: generating a random numbercomprising N bits; sequentially transmitting respective bits of therandom number onto a channel of the wireless network over respectivetime slots; comparing the random number to a random number of any otherwireless device contending for access to the wireless network; and basedon the comparison, determining whether to gain access to the wirelessnetwork.
 6. The method of claim 5, wherein said comparing comprisesdetermining whether any other device sequentially transmits a bit on thechannel during a respective time slot when the respective bit of therandom number does not meet a condition.
 7. The method of claim 6, saidcomparing further comprising: based on determining that at least oneother device sequentially transmits a bit on the channel during arespective time slot when the respective bit of the random number doesnot meet the condition: halting sequentially transmitting bits; andrestarting said contending for access to the wireless network.
 8. Themethod of claim 6, said comparing further comprising: based ondetermining that no other device sequentially transmits a bit on thechannel during any respective time slot when the respective bit of therandom number does not meet the condition, determining to gain access tothe wireless network.
 9. The method of claim 6, wherein saidsequentially transmitting a respective bit comprises: transmittingduring a first partition of the respective time slot.
 10. The method ofclaim 9, wherein said sequentially transmitting the respective bitfurther comprises, during a second partition of the respective timeslot:transmitting, if the respective bit meets the condition; and receiving,if the respective bit does not meet the condition.
 11. The method ofclaim 5, further comprising determining that the channel has been idlefor at least a distributed coordination function (DCF) Interframe Space(DIFS) duration.
 12. The method of claim 5, wherein determining to gainaccess to the wireless network comprises transmitting at least onepacket on the channel.
 13. An apparatus, comprising: one or moreprocessing elements, wherein the one or more processing elements areconfigured to cause a wireless device to: select a random number;sequentially advertise bits of the random number, wherein saidsequentially advertising a bit comprises determining whether to proceedto a next bit based at least in part on the value of the bit; and aftersequentially advertising a last bit of the random number, access thewireless network.
 14. The apparatus of claim 13, wherein sequentiallyadvertising the bit comprises: during a slot comprising a firstpartition and a second partition: when the bit is 0: transmit for thefirst partition, and receive for the second partition; and when the bitis 1: transmit for both the first partition and the second partition.15. The apparatus of claim 14, wherein determining whether to proceed toa next bit comprises: when the bit is 1 or when the bit is 0 and notransmission is received during the second partition, determine toproceed to the next bit; and when the bit is 0 and when a transmissionis received during the second partition, determine not to proceed to thenext bit.
 16. The apparatus of claim 13, wherein determining whether toproceed to the next bit is further based at least in part on whether anyother wireless device sequentially advertises a bit.
 17. The apparatusof claim 13, wherein accessing the wireless network comprisestransmitting at least one packet on the wireless network.
 18. Theapparatus of claim 13, wherein the one or more processing elements arefurther configured to cause the wireless device to perform a legacyprocess.
 19. The apparatus of claim 18, wherein the wireless network isan IEEE 802.11 network; and wherein the legacy process comprisesenhanced distributed channel access (EDCA).
 20. The apparatus of claim13, wherein the one or more processing elements are further configuredto cause the wireless device to determine that a clear channelassessment (CCA) prior to sequentially advertising bits of the randomnumber.